package com.taobao.api.response;

import java.util.List;
import com.taobao.api.internal.mapping.ApiField;
import com.taobao.api.internal.mapping.ApiListField;
import com.taobao.api.TaobaoObject;

import com.taobao.api.TaobaoResponse;

/**
 * TOP API: tmall.nr.zqs.plan.query response.
 * 
 * @author top auto create
 * @since 1.0, null
 */
public class TmallNrZqsPlanQueryResponse extends TaobaoResponse {

	private static final long serialVersionUID = 4193465783884448243L;

	/** 
	 * result
	 */
	@ApiField("result")
	private NrResult result;


	public void setResult(NrResult result) {
		this.result = result;
	}
	public NrResult getResult( ) {
		return this.result;
	}
	
	/**
 * planList
 *
 * @author top auto create
 * @since 1.0, null
 */
public static class NrZqsPlanDetailInfoDto extends TaobaoObject {

	private static final long serialVersionUID = 3634572524293581153L;

	/**
		 * 计划配送时间
		 */
		@ApiField("plan_date")
		private String planDate;
		/**
		 * 配送期号
		 */
		@ApiField("sequence_no")
		private Long sequenceNo;
	

	public String getPlanDate() {
			return this.planDate;
		}
		public void setPlanDate(String planDate) {
			this.planDate = planDate;
		}
		public Long getSequenceNo() {
			return this.sequenceNo;
		}
		public void setSequenceNo(Long sequenceNo) {
			this.sequenceNo = sequenceNo;
		}

}

	/**
 * pauseInfos
 *
 * @author top auto create
 * @since 1.0, null
 */
public static class NrZqsPauseInfoDto extends TaobaoObject {

	private static final long serialVersionUID = 5213386457515195522L;

	/**
		 * 暂停结束时间，包含该天
		 */
		@ApiField("pause_end_day")
		private String pauseEndDay;
		/**
		 * 暂停开始时间，包含该天
		 */
		@ApiField("pause_start_day")
		private String pauseStartDay;
	

	public String getPauseEndDay() {
			return this.pauseEndDay;
		}
		public void setPauseEndDay(String pauseEndDay) {
			this.pauseEndDay = pauseEndDay;
		}
		public String getPauseStartDay() {
			return this.pauseStartDay;
		}
		public void setPauseStartDay(String pauseStartDay) {
			this.pauseStartDay = pauseStartDay;
		}

}

	/**
 * resultData
 *
 * @author top auto create
 * @since 1.0, null
 */
public static class NrZqsPlanRespDto extends TaobaoObject {

	private static final long serialVersionUID = 4399361922342251773L;

	/**
		 * 每次配送的周期天数（在cycleType为1时生效，其它时候为空），1表示每天送，2表示隔1天送
		 */
		@ApiField("cycle_days")
		private Long cycleDays;
		/**
		 * 配送频率类型:1-隔N天送，2-周末送，3-工作日送
		 */
		@ApiField("cycle_type")
		private Long cycleType;
		/**
		 * 每次配送件数
		 */
		@ApiField("num_per_cycle")
		private Long numPerCycle;
		/**
		 * 暂停退款提前告知的天数
		 */
		@ApiField("pause_ahead_days")
		private Long pauseAheadDays;
		/**
		 * pauseInfos
		 */
		@ApiListField("pause_infos")
		@ApiField("nr_zqs_pause_info_dto")
		private List<NrZqsPauseInfoDto> pauseInfos;
		/**
		 * planList
		 */
		@ApiListField("plan_list")
		@ApiField("nr_zqs_plan_detail_info_dto")
		private List<NrZqsPlanDetailInfoDto> planList;
		/**
		 * 配送时间范围，结束时间，只取时分，HH:mm格式
		 */
		@ApiField("send_end_time")
		private String sendEndTime;
		/**
		 * 配送时间范围，起送时间，只取时分，HH:mm格式
		 */
		@ApiField("send_start_time")
		private String sendStartTime;
		/**
		 * 退款开始时间，注意，这个时间当天如果有配送还是会配送的，第二天开始之后的配送会取消
		 */
		@ApiField("start_refund_date")
		private String startRefundDate;
		/**
		 * 每周几送，在cycle_type=4时生效，其它时候为空， 1表示周日，2表示周一...7表示周六（以周日为每周的第一天）
		 */
		@ApiField("week_day")
		private Long weekDay;
	

	public Long getCycleDays() {
			return this.cycleDays;
		}
		public void setCycleDays(Long cycleDays) {
			this.cycleDays = cycleDays;
		}
		public Long getCycleType() {
			return this.cycleType;
		}
		public void setCycleType(Long cycleType) {
			this.cycleType = cycleType;
		}
		public Long getNumPerCycle() {
			return this.numPerCycle;
		}
		public void setNumPerCycle(Long numPerCycle) {
			this.numPerCycle = numPerCycle;
		}
		public Long getPauseAheadDays() {
			return this.pauseAheadDays;
		}
		public void setPauseAheadDays(Long pauseAheadDays) {
			this.pauseAheadDays = pauseAheadDays;
		}
		public List<NrZqsPauseInfoDto> getPauseInfos() {
			return this.pauseInfos;
		}
		public void setPauseInfos(List<NrZqsPauseInfoDto> pauseInfos) {
			this.pauseInfos = pauseInfos;
		}
		public List<NrZqsPlanDetailInfoDto> getPlanList() {
			return this.planList;
		}
		public void setPlanList(List<NrZqsPlanDetailInfoDto> planList) {
			this.planList = planList;
		}
		public String getSendEndTime() {
			return this.sendEndTime;
		}
		public void setSendEndTime(String sendEndTime) {
			this.sendEndTime = sendEndTime;
		}
		public String getSendStartTime() {
			return this.sendStartTime;
		}
		public void setSendStartTime(String sendStartTime) {
			this.sendStartTime = sendStartTime;
		}
		public String getStartRefundDate() {
			return this.startRefundDate;
		}
		public void setStartRefundDate(String startRefundDate) {
			this.startRefundDate = startRefundDate;
		}
		public Long getWeekDay() {
			return this.weekDay;
		}
		public void setWeekDay(Long weekDay) {
			this.weekDay = weekDay;
		}

}

	/**
 * result
 *
 * @author top auto create
 * @since 1.0, null
 */
public static class NrResult extends TaobaoObject {

	private static final long serialVersionUID = 3665281158544339484L;

	/**
		 * 错误码
		 */
		@ApiField("error_code")
		private String errorCode;
		/**
		 * 错误信息
		 */
		@ApiField("error_message")
		private String errorMessage;
		/**
		 * 是否成功
		 */
		@ApiField("is_success")
		private Boolean isSuccess;
		/**
		 * resultData
		 */
		@ApiField("result_data")
		private NrZqsPlanRespDto resultData;
	

	public String getErrorCode() {
			return this.errorCode;
		}
		public void setErrorCode(String errorCode) {
			this.errorCode = errorCode;
		}
		public String getErrorMessage() {
			return this.errorMessage;
		}
		public void setErrorMessage(String errorMessage) {
			this.errorMessage = errorMessage;
		}
		public Boolean getIsSuccess() {
			return this.isSuccess;
		}
		public void setIsSuccess(Boolean isSuccess) {
			this.isSuccess = isSuccess;
		}
		public NrZqsPlanRespDto getResultData() {
			return this.resultData;
		}
		public void setResultData(NrZqsPlanRespDto resultData) {
			this.resultData = resultData;
		}

}



}
